package com.ljx.Daoyu;

/**
 * @author 李加喜
 * @Package com.ljx.Daoyu
 * @date 2021-11-08 23:26
 */
//不同岛屿的数量
public class OtherDaoyu {
    public static void main(String[] args) {

    }
    void dfs(int[][] grid, int i, int j, StringBuilder sb, int dir) {
        int m = grid.length, n = grid[0].length;
        if (i < 0 || j < 0 || i >= m || j >= n
                || grid[i][j] == 0) {
            return;
        }
        // 前序遍历位置：进入 (i, j)
        grid[i][j] = 0;
        sb.append(dir).append(',');
        // 上
        dfs(grid, i - 1, j, sb, 1);
        // 下
        dfs(grid, i + 1, j, sb, 2);
        // 左
        dfs(grid, i, j - 1, sb, 3);
        // 右
        dfs(grid, i, j + 1, sb, 4);

        // 后序遍历位置：离开 (i, j)
        sb.append(-dir).append(',');
    }
}
